# 集合 List Set Map
# List
Listd的定义:
  List list1 = ['Apple', 'HuaWei', 'Sansung'];
  var item1 = list1[1];
  print(item1);//HuaWei
  var list2 = new List();
  list2.add('手机');
  list2.add('电脑');
  list2.add('电视');
  list2.addAll(['洗衣机','电冰箱']);
  print(list2);//[手机, 电脑, 电视, 洗衣机, 电冰箱]
List常用属性
| 属性字段 | 描述 | 
|---|---|
length |  集合长度 | 
reversed |  翻转倒序(返回并不是集合,需要调用toList方法转为集合) | 
isEmpty |  是否为空 | 
isNotEmpty |  是否不为空 | 
List常用方法
| 方法名 | 描述 | 
|---|---|
add |  增加 | 
addAll |  拼接数组 | 
indexOf |  查找索引,找不到返回-1 | 
remove |  移除具体元素 | 
removeAt |  移除指定索引的元素 | 
fillRange |  修改 | 
insert(index,value) |  指定位置插入 | 
insertAll(index,list) |  指定位置插入list | 
toList |  其他类型转List | 
join |  List转字符串 | 
split |  字符串分割成集合 | 
forEach |  遍历 | 
map |  遍历 | 
where |  遍历筛选满足条件的元素 | 
any |  只要集合中有满足条件的返回true | 
every |  集合每一项都满足条件的返回true | 
# Set
Set 不重复的集合;
Set的定义
  var set = new Set();
  set.add('Apple');
  set.addAll(['HuaWei', 'Sansung']);
  print(set); //{Apple, HuaWei, Sansung}
# Map
Map的定义
  var person = {'name': '张三', 'age': '22'};
  print(person);//{name: 张三, age: 22}
  var p = new Map();
  p['name']='李四';
  p['age']='23';
  print(p);//{name: 李四, age: 23}
List常用属性
| 属性字段 | 描述 | 
|---|---|
keys |  获取所有键(返回并不是集合,需要调用toList方法转为集合值 | 
values |  获取所有值(返回并不是集合,需要调用toList方法转为集合) | 
isEmpty |  是否为空 | 
isNotEmpty |  是否不为空 |